import type { LegacyRef } from 'react';
import { ColorEnum } from '../common';

export interface SegmentOptions {
  /**
   * 占位符
   */
  placeholder?: boolean;
  /**
   * 突出
   */
  raised?: boolean;
  /**
   * 堆叠
   */
  stacked?: boolean | 'tall';
  /**
   * 交错堆叠
   */
  piled?: boolean;
  /**
   * 垂直
   */
  vertical?: boolean;
  /**
   * 颜色
   */
  color?: ColorEnum;
  /**
   * 次要
   */
  secondary?: boolean;
  /**
   * 第三级
   */
  tertiary?: boolean;
  /**
   * 禁用
   */
  disabled?: boolean;
  /**
   * 加载
   */
  loading?: boolean | 'double' | 'usual' | 'usual double';
  /**
   * 深色背景
   */
  inverted?: boolean;
  /**
   * 附属
   */
  attached?: boolean | 'top' | 'bottom';
  /**
   * padding
   */
  padded?: boolean | 'very';
  /**
   * 合身
   */
  fitted?: boolean | 'horizontally' | 'vertically';
  /**
   * 紧凑
   */
  compact?: boolean;
  /**
   * 圆形
   */
  circular?: boolean;
  /**
   * 清除浮动
   */
  clearing?: boolean;
  /**
   * 浮动
   */
  floated?: 'left' | 'right';
  /**
   * 对齐方式
   */
  aligned?: 'left' | 'center' | 'right';
  /**
   * 基本样式
   */
  basic?: boolean;
  /**
   * 滚动
   */
  scrolling?: boolean | 'long' | 'very long' | 'short' | 'very short';
  /**
   * 转发 ref
   */
  forwardedRef?: LegacyRef<HTMLElement>;
}

export interface SegmentInlineOptions {
  /**
   * 转发 ref
   */
  forwardedRef?: LegacyRef<HTMLElement>;
}

export interface SegmentGroupOptions {
  /**
   * 基本
   */
  basic?: boolean;
  /**
   * 水平
   */
  horizontal?: boolean;
  /**
   * 水平显示宽度等分
   */
  equal?: boolean;
  /**
   * 可堆叠
   */
  stackable?: boolean;
  /**
   * 突出
   */
  raised?: boolean;
  /**
   * 堆叠
   */
  stacked?: boolean;
  /**
   * 交错堆叠
   */
  piled?: boolean;
  /**
   * 紧凑
   */
  compact?: boolean;
  /**
   * 转发 ref
   */
  forwardedRef?: LegacyRef<HTMLElement>;
}
